<!--
 * @Description: 生产调度
 * @Author: wangwangwang
 * @Date: 2020-09-21 14:09:06
 * @LastEditors: Please set LastEditors
 * @LastEditTime: 2021-12-29 14:53:01
-->
<template>
  <div class="pages_content table">
    <el-container>
      <el-header>
        <breaDcrumb />
      </el-header>
      <el-main>
        <div>
          <!-- <div class="header_right" @click="showCardNav = !showCardNav">
            <div class="title">搜索</div>
            <div>
              <span v-show="!showCardNav">
                <i style="margin-right: 5px;" class="el-icon-arrow-down"></i>
              </span>
              <span v-show="showCardNav">
                <i style="margin-right: 5px;" class="el-icon-arrow-up"></i>
              </span>
            </div>
          </div> -->
          <div v-show="showCardNav" class="hr"></div>
          <el-collapse-transition>
            <div v-show="showCardNav">
              <div class="search">
                <span style="margin-bottom: 10px; display: inline-block">
                  <span style="margin-right: 12px">订单号</span>
                  <el-input
                    v-model="tableParam.orderNo"
                    style="width: 150px"
                    placeholder="请输入"
                    @keyup.enter.native="gettableData()"
                  />
                </span>
                <span style="margin-left: 24px">
                  <span style="margin-right: 12px">浇筑部位</span>
                  <el-input
                    v-model="tableParam.structuralParts"
                    style="width: 190px"
                    placeholder="请输入"
                    @keyup.enter.native="gettableData()"
                  />
                </span>
                <span style="margin-left: 24px">
                  <span style="margin-right: 12px">工程名称</span>
                  <el-input
                    v-model="tableParam.engineeringName"
                    style="width: 190px"
                    placeholder="请输入"
                    @keyup.enter.native="gettableData()"
                  />
                </span>
                <span style="margin-left: 24px">
                  <span style="margin-right: 12px">浇筑方式</span>
                  <el-input
                    v-model="tableParam.pouringMethod"
                    style="width: 170px"
                    placeholder="请输入"
                    @keyup.enter.native="gettableData()"
                  />
                </span>
                <span style="margin-left: 24px">
                  <span style="margin-right: 12px">浇筑时间</span>
                  <el-date-picker
                    v-model="startTimDateEndTimDate"
                    type="datetimerange"
                    unlink-panels
                    style="width: 320px"
                    value-format="yyyy-MM-dd HH:mm:ss"
                    start-placeholder="开始时间"
                    end-placeholder="结束时间"
                    @change="
                      (tableParam.pouringTime = startTimDateEndTimDate
                        ? startTimDateEndTimDate[0]
                        : ''),
                        (tableParam.endPouringTime = startTimDateEndTimDate
                          ? startTimDateEndTimDate[1]
                          : '')
                    "
                  ></el-date-picker>
                </span>
                <el-button
                  icon="el-icon-search"
                  size="medium"
                  class="bottom_all but1"
                  @click="(tableParam.page = 1), gettableData()"
                  >查 询</el-button
                >
                <el-button
                  size="medium"
                  class="bottom_all_two"
                  style="margin-left: 12px"
                  @click="init()"
                  >重 置</el-button
                >
              </div>
            </div>
          </el-collapse-transition>
          <div class="hr"></div>
          <div class="card">
            <div class="card_nav">
              <div>
                <el-button
                  size="small"
                  class="botton_five"
                  @click="get_queue_up_informFun()"
                  >车辆排队信息</el-button
                >
                <el-button
                  size="small"
                  class="botton_five"
                  @click="handleSurplus()"
                  >余料处理信息</el-button
                >
                <el-button
                  size="small"
                  class="botton_five"
                  @click="handleTurning()"
                  >翻料处理信息</el-button
                >
              </div>
              <div>
                <el-dropdown
                  :hide-on-click="false"
                  trigger="click"
                  style="margin: 0 20px"
                >
                  <el-link :underline="false">
                    <span class="el-icon--left">
                      <i class="iconfont iconicon_button_filtrate"></i>
                    </span>
                    筛选
                  </el-link>
                  <el-dropdown-menu slot="dropdown">
                    <el-dropdown-item
                      v-for="(item, index) in tableA"
                      :key="index"
                    >
                      <el-checkbox v-model="item.status">{{
                        item.label
                      }}</el-checkbox>
                    </el-dropdown-item>
                  </el-dropdown-menu>
                </el-dropdown>
              </div>
            </div>
            <div v-loading="tableLoading" class="card_info" :style="style">
              <el-table
                :header-cell-style="{ background: '#f3f6f9' }"
                :cell-style="{ borderRight: 'none' }"
                border
                stripe
                style="width: 100%"
                :data="tableData"
                tooltip-effect="dark"
              >
                <template v-for="(item, index2) in tableA">
                  <el-table-column
                    v-if="item.status"
                    :key="index2"
                    :label="item.label"
                    align="center"
                    :width="item.width"
                  >
                    <template slot-scope="scope">
                      <div v-if="item.label == '订单类型'">
                        <div v-if="scope.row.orderType == 1">市场扩展订单</div>
                        <div v-if="scope.row.orderType == 2">
                          市场扩展调整订单
                        </div>
                        <div v-if="scope.row.orderType == 3">外协业务订单</div>
                        <div v-if="scope.row.orderType == 4">自用订单</div>
                        <div v-if="scope.row.orderType == 5">
                          非市场扩展订单
                        </div>
                      </div>
                      <div v-else-if="item.label == '浇筑方式'">
                        <div>
                          {{ scope.row.pouringMethod | pouringMethodFilter }}
                        </div>
                      </div>
                      <div v-else-if="item.label == '物流运输'">
                        <el-link
                          class="table_link"
                          :underline="false"
                          @click="ToViewTypeFun(scope.row)"
                          >查看运输</el-link
                        >
                      </div>
                      <div v-else-if="item.label == '发料通知'">
                        <el-button
                          v-if="scope.row.orderType == 1"
                          size="mini"
                          class="bottom_one"
                          @click="look5_0Fun(scope.row)"
                          >查看</el-button
                        >
                        <el-tag
                          v-if="scope.row.planNoticeNum"
                          type="danger"
                          size="mini"
                          >{{ scope.row.planNoticeNum }}</el-tag
                        >
                      </div>
                      <span v-else>{{ scope.row[item.prop] }}</span>
                    </template>
                  </el-table-column>
                </template>
              </el-table>
            </div>
          </div>
        </div>
      </el-main>
      <div class="card_bottom">
        <div class="card_bottom_left">
          <div class="top_page_totle">总共{{ total }}条</div>
          <el-pagination
            :current-page.sync="tableParam.page"
            :page-size="tableParam.pageSize"
            :page-sizes="[10, 20, 30, 40, 50, 100, 200, 500, 1000]"
            layout="prev,pager,sizes,next,jumper"
            :total="total"
            @size-change="sizeChange"
            @current-change="gettableData()"
          ></el-pagination>
        </div>
        <div>
          <el-button
            size="mini"
            icon="el-icon-refresh-right"
            class="bottom_all_two"
            @click="gettableData"
            >刷新</el-button
          >
        </div>
      </div>
    </el-container>
    <!-- 查看运输列表 -->
    <el-dialog
      :visible.sync="ToViewType"
      width="80%"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">物流运输</span>
      <div>
        <div class="FZYtitle">
          <span>工程名称：{{ formTop.engineeringName }}</span>
          <span>订单号：{{ formTop.orderNo }}</span>
          <span>产品名称：{{ formTop.productName }}</span>
          <el-button @click="addInfoFun()">生成数据</el-button>
        </div>
        <div style="margin-bottom: 10px">
          <el-link class="table_link" :underline="false" @click="look1Type1Fun"
            >信息补录</el-link
          >
          <el-link class="table_link" :underline="false" @click="look1Type2Fun"
            >空票签收</el-link
          >
        </div>
        <el-table
          :header-cell-style="{ background: '#f3f6f9' }"
          :cell-style="{ borderRight: 'none' }"
          border
          stripe
          style="width: 100%"
          height="450"
          :data="tableData2"
          tooltip-effect="dark"
        >
          <template v-for="(item, index2) in tableB">
            <el-table-column
              v-if="item.status"
              :key="index2"
              :label="item.label"
              align="center"
              :width="item.width"
              :fixed="
                item.label == '异常管理' || item.label == '操作通知'
                  ? 'right'
                  : false
              "
            >
              <template slot-scope="scope">
                <div v-if="item.label == '状态'">
                  <div v-if="scope.row.dataStatus == 1">检验中</div>
                  <div v-if="scope.row.dataStatus == 2">运输中</div>
                  <div v-if="scope.row.dataStatus == 3">浇筑中</div>
                  <div v-if="scope.row.dataStatus == 4">已签收</div>
                  <div v-if="scope.row.dataStatus == 5">未确认</div>
                  <div v-if="scope.row.dataStatus == 6">待签收</div>
                  <div v-if="scope.row.dataStatus == 7">已拒绝</div>
                </div>
                <div v-else-if="item.label == '容重'">
                  {{ scope.row.mixProportion | mixProportionFun }}
                </div>
                <div v-else-if="item.label == '运输号'">
                  <el-link
                    class="table_link"
                    :underline="false"
                    @click="lookFun(scope.row)"
                    >{{ scope.row.code }}</el-link
                  >
                </div>
                <div v-else-if="item.label == '异常管理'">
                  <el-link
                    class="table_link"
                    :underline="false"
                    :disabled="scope.row.dataStatus == 4"
                    @click="look5Fun(scope.row)"
                    >检测</el-link
                  >
                  <el-link
                    :disabled="scope.row.dataStatus == 4"
                    class="table_link"
                    :underline="false"
                    @click="look4Fun(scope.row)"
                    >过磅核对</el-link
                  >
                  <el-link
                    :disabled="scope.row.dataStatus == 4"
                    class="table_link"
                    :underline="false"
                    @click="look7Fun(scope.row)"
                    >物流异常</el-link
                  >
                </div>
                <div v-else-if="item.label == '调整余斜量（方）'">
                  <el-input
                    v-model="scope.row.adjustResidueNum"
                    :disabled="scope.row.dataStatus == 4"
                    style="width: 100%"
                    @change="adjustFun(scope.row, 'adjustResidueNum')"
                  ></el-input>
                </div>
                <div v-else-if="item.label == '调整签收量（方）'">
                  <el-input
                    v-model="scope.row.adjustSignForNum"
                    :disabled="scope.row.dataStatus == 4"
                    style="width: 100%"
                    @change="adjustFun(scope.row, 'adjustSignForNum')"
                  ></el-input>
                </div>
                <div v-else-if="item.label == '客户小方量运输补差(方)'">
                  <div>{{ scope.row.smallQuantitiesDelta }} (方)</div>
                  <el-radio-group
                    v-model="scope.row.isSmallQuantities"
                    :disabled="scope.row.dataStatus == 4"
                    @change="
                      set_small_quantities_deltaFun(
                        'isSmallQuantities',
                        scope.row
                      )
                    "
                  >
                    <el-radio :label="0">否</el-radio>
                    <el-radio :label="1">是</el-radio>
                  </el-radio-group>
                </div>
                <div v-else-if="item.label == '运输单位小方量补差(方)'">
                  <div>{{ scope.row.smallDeltaTransport }} (方)</div>
                  <el-radio-group
                    v-model="scope.row.isSmallTransport"
                    :disabled="scope.row.dataStatus == 4"
                    @change="
                      set_small_quantities_deltaFun(
                        'isSmallTransport',
                        scope.row
                      )
                    "
                  >
                    <el-radio :label="0">否</el-radio>
                    <el-radio :label="1">是</el-radio>
                  </el-radio-group>
                </div>
                <div v-else-if="item.label == '客户余料'">
                  <div v-if="scope.row.companyIsClout === 1">有余料</div>
                  <div v-else-if="scope.row.companyIsClout === 0">无余料</div>
                  <div v-else>-</div>
                </div>
                <div v-else-if="item.label == '内部余料'">
                  <div v-if="scope.row.frontIsClout === 1">有余料</div>
                  <div v-else-if="scope.row.frontIsClout == 0">无余料</div>
                  <div v-else>-</div>
                </div>
                <div v-else-if="item.label == '运输数据来源'">
                  <div v-if="scope.row.dataType == 1">
                    {{ scope.row.productionSite }} (ERP)
                  </div>
                  <div v-if="scope.row.dataType == 2">信息补录</div>
                  <div v-if="scope.row.dataType == 3">空票签收</div>
                  <div v-if="scope.row.dataType == 4">
                    <div>外协数据</div>
                    <div v-if="scope.row.orderType != 3">
                      <el-radio-group
                        v-model="scope.row.isProcessing"
                        :disabled="scope.row.dataStatus == 4"
                        @change="update_data_typeFun(scope.row)"
                      >
                        <el-radio :label="1">直供</el-radio>
                        <el-radio :label="2">代加工</el-radio>
                      </el-radio-group>
                      <el-radio-group
                        v-model="scope.row.isCarriage"
                        :disabled="scope.row.dataStatus == 4"
                        @change="update_data_typeFun(scope.row)"
                      >
                        <el-radio :label="1">我方运输</el-radio>
                        <el-radio :label="2">外协运输</el-radio>
                      </el-radio-group>
                      <el-radio-group
                        v-model="scope.row.isPumping"
                        :disabled="scope.row.dataStatus == 4"
                        @change="update_data_typeFun(scope.row)"
                      >
                        <el-radio :label="1">我方泵送</el-radio>
                        <el-radio :label="2">外协泵送</el-radio>
                      </el-radio-group>
                    </div>
                    <div v-else>
                      <el-radio-group
                        v-model="scope.row.isProcessing"
                        :disabled="scope.row.dataStatus == 4"
                        @change="update_data_typeFun(scope.row)"
                      >
                        <el-radio :label="2">直供</el-radio>
                        <el-radio :label="1">代加工</el-radio>
                      </el-radio-group>
                      <el-radio-group
                        v-model="scope.row.isCarriage"
                        :disabled="scope.row.dataStatus == 4"
                        @change="update_data_typeFun(scope.row)"
                      >
                        <el-radio :label="2">我方运输</el-radio>
                        <el-radio :label="1">外协运输</el-radio>
                      </el-radio-group>
                      <el-radio-group
                        v-model="scope.row.isPumping"
                        :disabled="scope.row.dataStatus == 4"
                        @change="update_data_typeFun(scope.row)"
                      >
                        <el-radio :label="2">我方泵送</el-radio>
                        <el-radio :label="1">外协泵送</el-radio>
                      </el-radio-group>
                    </div>
                  </div>
                </div>
                <div v-else-if="item.label == '卸料视频'">
                  <span v-if="scope.row.dataType != 3">
                    <el-link
                      v-if="
                        scope.row.videoList && scope.row.videoList.length > 0
                      "
                      class="table_link"
                      :underline="false"
                      @click="look6Fun(scope.row)"
                      >查看</el-link
                    >
                    <span v-else>-</span>
                  </span>
                </div>
                <!-- <div v-else-if="item.label == '后场签收'">
                  <el-link :disabled="scope.row.dataStatus == 4 || scope.row.dataStatus == 6" class="table_link" :underline="false" @click="WXupdateStatusFun(scope.row)">签收</el-link>
                </div> -->
                <!-- <div v-else-if="item.label == '司机小票'">
                  <el-link :disabled="scope.row.dataStatus != 1" class="table_link" :underline="false" @click="formdata6Fun(scope.row,'司机小票')">发送司机</el-link>
                </div>
                <div v-else-if="item.label == '客户小票'">
                  <el-link :disabled="scope.row.dataStatus != 3 && scope.row.dataStatus!=6" class="table_link" :underline="false" @click="formdata6Fun(scope.row,'客户小票')">发送客户</el-link>
                </div> -->
                <div v-else-if="item.label == '卸料视频审核状态'">
                  <div v-if="scope.row.dataType != 3">
                    <div v-if="scope.row.videoAudit == 0">未审核</div>
                    <div v-else-if="scope.row.videoAudit == 1">合格</div>
                    <div v-else-if="scope.row.videoAudit == 2">不合格</div>
                  </div>
                </div>
                <div v-else-if="item.label == '操作通知'">
                  <el-checkbox
                    v-model="scope.row.markWeighing"
                    label="回场过磅"
                    :true-label="1"
                    :false-label="0"
                    :disabled="
                      scope.row.markWeighing == 1 || scope.row.dataStatus == 4
                    "
                    @click.native="look1Fun(scope.row, $event)"
                  ></el-checkbox>
                  <el-checkbox
                    v-model="scope.row.markSalesReturn"
                    label="强制退货"
                    :true-label="1"
                    :false-label="0"
                    :disabled="
                      scope.row.markSalesReturn == 1 ||
                      scope.row.dataStatus == 4
                    "
                    @click.native="look2Fun(scope.row)"
                  ></el-checkbox>
                </div>
                <div v-else-if="item.label == '浇筑方式'">
                  <div v-if="scope.row.detList.length == 1">
                    {{ scope.row.detList[0].pouringWay }}
                  </div>
                  <div v-else-if="scope.row.detList.length > 1">
                    <div
                      v-for="item in scope.row.detList"
                      :key="item.id"
                      style="border-bottom: 1px solid #ebeef5"
                    >
                      {{ item.pouringWay }}
                    </div>
                  </div>
                </div>
                <div v-else-if="item.label == '高度/臂长(米)'">
                  <div v-if="scope.row.detList.length == 1">
                    {{ scope.row.detList[0].height }}
                  </div>
                  <div v-else-if="scope.row.detList.length > 1">
                    <div
                      v-for="item in scope.row.detList"
                      :key="item.id"
                      style="border-bottom: 1px solid #ebeef5"
                    >
                      {{ item.height }}
                    </div>
                  </div>
                </div>
                <div v-else-if="item.label == '浇筑量(方)'">
                  <div v-if="scope.row.detList.length == 1">
                    {{ scope.row.detList[0].num }}
                  </div>
                  <div v-else-if="scope.row.detList.length > 1">
                    <div
                      v-for="item in scope.row.detList"
                      :key="item.id"
                      style="border-bottom: 1px solid #ebeef5"
                    >
                      {{ item.num }}
                    </div>
                  </div>
                </div>
                <div v-else-if="item.label == '泵送时间'">
                  <div v-if="scope.row.detList.length == 1">
                    {{ scope.row.detList[0].createTime }}
                  </div>
                  <div v-else-if="scope.row.detList.length > 1">
                    <div
                      v-for="item in scope.row.detList"
                      :key="item.id"
                      style="border-bottom: 1px solid #ebeef5"
                    >
                      {{ item.createTime }}
                    </div>
                  </div>
                </div>
                <div v-else-if="item.label == '泵管使用'">
                  <!-- <div v-if="scope.row.detList.length == 1"> -->
                  <el-radio-group
                    v-if="scope.row.detList.length > 0"
                    v-model="scope.row.detList[0].pumpLineUse"
                    :disabled="scope.row.dataStatus == 4"
                    @change="
                      update_pump_line_useFun(
                        scope.row.detList[0],
                        scope.row.detList[0].pumpLineUse
                      )
                    "
                  >
                    <el-radio :label="1">内部泵管</el-radio>
                    <el-radio :label="2">外部泵管</el-radio>
                  </el-radio-group>
                  <!-- </div>
                  <div v-else-if="scope.row.detList.length > 1">
                    <div v-for="item in scope.row.detList" :key="item.id" style="border-bottom: 1px solid #EBEEF5;">
                      <el-radio-group v-model="item.pumpLineUse" :disabled="scope.row.dataStatus == 4" @change="
                          update_pump_line_useFun(item, item.pumpLineUse)
                        ">
                        <el-radio :label="1">我方泵送</el-radio>
                        <el-radio :label="2">外协泵送</el-radio>
                      </el-radio-group>
                    </div>
                  </div> -->
                </div>
                <div v-else-if="item.label == '签收类型'">
                  <span>{{
                    scope.row[item.prop] == 0 ? "自动签收" : "手动签收"
                  }}</span>
                </div>
                <div v-else-if="item.label == '离场类型'">
                  <span>{{
                    scope.row[item.prop] == 1 ? "正常离场" : "补录离场"
                  }}</span>
                </div>
                <span v-else>{{ scope.row[item.prop] }}</span>
              </template>
            </el-table-column>
          </template>
        </el-table>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="ToViewType = false"
          >关 闭</el-button
        >
      </span>
    </el-dialog>
    <!-- 物流详情 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="lookType"
      width="1300px"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">运输信息</span>
      <div class="dialoginfo j_FZYinfo">
        <el-form
          ref="submit1_1"
          :rules="rules1"
          :inline="true"
          :model="formData"
          label-width="130px"
        >
          <el-form-item label="运输号：">
            <span>{{ formData.code }}</span>
          </el-form-item>
          <el-form-item label="车牌号：">
            <span>{{ formData.carNo }}</span>
          </el-form-item>
          <el-form-item label="生产时间：">
            <span>{{ formData.proTime }}</span>
          </el-form-item>
          <el-form-item label="生产量(方)：">
            <span>{{ formData.proNum }}</span>
          </el-form-item>
          <el-form-item label="富余量(方)：">
            <span>{{ formData.residueNum }}</span>
          </el-form-item>
          <el-form-item label="损耗量(方)：">
            <span>{{ formData.lossNum }}</span>
          </el-form-item>
          <el-form-item label="转入量(方)：">
            <span>{{ formData.shiftTo }}</span>
          </el-form-item>
          <el-form-item label="票面量(方)：">
            <span>{{ formData.faceValue }}</span>
          </el-form-item>
          <el-form-item label="生产站：">
            <span>{{ formData.productionSite }}</span>
          </el-form-item>
          <el-form-item label="生产线：">
            <span>{{ formData.proLine }}</span>
          </el-form-item>
          <el-form-item label="容重：">
            <span>{{ formData.mixProportion | mixProportionFun }}</span>
          </el-form-item>
          <el-form-item label="异常调整量(方)：">
            <span>{{ formData.adjustNum }}</span>
          </el-form-item>
          <el-form-item label="调整余斜量(方)：">
            <el-input
              v-model="formData.adjustResidueNum"
              :disabled="formData.dataStatus == 4"
              style="width: 120px"
              onkeypress="return( /\d|\./.test(String.fromCharCode(event.keyCode)))"
              @input="
                formData.adjustResidueNum = $regExp.checkNum(
                  formData.adjustResidueNum
                )
              "
              @blur="
                formData.adjustResidueNum = $regExp.blurCheckNum(
                  formData.adjustResidueNum
                )
              "
            ></el-input>
          </el-form-item>
          <el-form-item label="调整签收量(方)：">
            <el-input
              v-model="formData.adjustSignForNum"
              :disabled="formData.dataStatus == 4"
              style="width: 120px"
              onkeypress="return( /\d|\./.test(String.fromCharCode(event.keyCode)))"
              @input="
                formData.adjustSignForNum = $regExp.checkNum(
                  formData.adjustSignForNum
                )
              "
              @blur="
                formData.adjustSignForNum = $regExp.blurCheckNum(
                  formData.adjustSignForNum
                )
              "
            ></el-input>
          </el-form-item>
          <el-form-item label="运输距离(千米)：">
            <el-input
              v-model="formData.transportDistance"
              :disabled="formData.dataStatus == 4"
              style="width: 120px"
              onkeypress="return( /\d|\./.test(String.fromCharCode(event.keyCode)))"
              @input="
                formData.transportDistance = $regExp.checkNum(
                  formData.transportDistance
                )
              "
              @blur="
                formData.transportDistance = $regExp.blurCheckNum(
                  formData.transportDistance
                )
              "
            ></el-input>
          </el-form-item>
          <el-form-item
            label="客户小方量运输补差(方)："
            style="width: 360px"
            label-width="180px"
          >
            <span>{{ formData.smallQuantitiesDelta }}</span>
            <el-radio-group
              v-model="formData.isSmallQuantities"
              style="margin-left: 20px"
              :disabled="formData.dataStatus == 4"
            >
              <el-radio :label="0">否</el-radio>
              <el-radio :label="1">是</el-radio>
            </el-radio-group>
          </el-form-item>
          <el-form-item
            label="运输单位小方量补差(方)："
            style="width: 360px"
            label-width="180px"
          >
            <span>{{ formData.smallDeltaTransport }}</span>
            <el-radio-group
              v-model="formData.isSmallTransport"
              style="margin-left: 20px"
              :disabled="formData.dataStatus == 4"
            >
              <el-radio :label="0">否</el-radio>
              <el-radio :label="1">是</el-radio>
            </el-radio-group>
          </el-form-item>
          <el-form-item label="状态：">
            <span v-if="formData.dataStatus == 1">检验中</span>
            <span v-if="formData.dataStatus == 2">运输中</span>
            <span v-if="formData.dataStatus == 3">浇筑中</span>
            <span v-if="formData.dataStatus == 4">已签收</span>
            <span v-if="formData.dataStatus == 5">未确认</span>
            <span v-if="formData.dataStatus == 6">待签收</span>
            <span v-if="formData.dataStatus == 7">已拒绝</span>
          </el-form-item>
          <div>
            <div v-if="formData.dataStatus != 4" style="padding-bottom: 10px">
              <el-button
                size="mini"
                class="bottom_all"
                style="margin-left: 0"
                @click="addDetList()"
              >
                <i
                  class="icon iconfont iconicon_button_add"
                  style="font-size: 12px"
                ></i>
                添加
              </el-button>
            </div>
            <el-table
              ref="formDataTable"
              :header-cell-style="{ background: '#f3f6f9' }"
              :cell-style="{ borderRight: 'none' }"
              border
              stripe
              style="width: 100%"
              :data="formData.detList"
              tooltip-effect="dark"
              :row-class-name="className"
            >
              <el-table-column label="泵类型" align="center" width="120">
                <template slot-scope="scope">
                  <el-select
                    v-model="scope.row.pouringWayId"
                    :disabled="formData.dataStatus == 4"
                    placeholder="请选择"
                    style="width: 100%"
                    @change="changeItem2(scope.row)"
                  >
                    <el-option
                      v-for="(item, index) in pumpTypeList"
                      :key="index"
                      :label="item.itemName"
                      :value="item.id"
                    ></el-option>
                  </el-select>
                </template>
              </el-table-column>
              <el-table-column label="高度/臂长(米)" align="center">
                <template slot-scope="scope">
                  <el-input-number
                    v-model="scope.row.height"
                    :disabled="formData.dataStatus == 4"
                    :precision="0"
                    style="width: 100%"
                    :controls="false"
                  ></el-input-number>
                </template>
              </el-table-column>
              <el-table-column label="浇筑量(方)" align="center">
                <template slot-scope="scope">
                  <el-input-number
                    v-model="scope.row.num"
                    :disabled="formData.dataStatus == 4"
                    :precision="0"
                    style="width: 100%"
                    :controls="false"
                  ></el-input-number>
                </template>
              </el-table-column>
              <el-table-column label="余料浇筑分配量" align="center">
                <template slot-scope="scope">
                  <el-input-number
                    v-model="scope.row.surplusMaterialsDistribution"
                    :disabled="formData.dataStatus == 4"
                    :precision="0"
                    style="width: 100%"
                    :controls="false"
                  ></el-input-number>
                </template>
              </el-table-column>
              <el-table-column label="卸料时间" align="center" width="220">
                <template slot-scope="scope">
                  <el-date-picker
                    v-model="scope.row.pumpingTime"
                    :disabled="formData.dataStatus == 4"
                    type="datetime"
                    value-format="yyyy-MM-dd HH:mm:ss"
                    placeholder="请选择"
                    style="width: 100%"
                  ></el-date-picker>
                </template>
              </el-table-column>
              <el-table-column label="泵管使用" align="center" width="220">
                <template slot-scope="scope">
                  <el-radio-group
                    v-model="scope.row.pumpLineUse"
                    :disabled="formData.dataStatus == 4"
                  >
                    <el-radio :label="1">内部泵管</el-radio>
                    <el-radio :label="2">外部泵管</el-radio>
                  </el-radio-group>
                </template>
              </el-table-column>
              <el-table-column
                v-if="formData.dataStatus != 4"
                label="操作"
                align="left"
                prop="specification"
              >
                <template slot-scope="scope">
                  <el-button
                    size="mini"
                    class="bottom_two"
                    @click="deleteDetList(scope.$index)"
                  >
                    <i
                      class="icon iconfont iconicon_button_delete"
                      style="font-size: 12px"
                    ></i>
                    删除
                  </el-button>
                </template>
              </el-table-column>
            </el-table>
          </div>
        </el-form>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="lookType = false"
          >关 闭</el-button
        >
        <el-button
          v-if="formData.dataStatus != 4"
          class="bottom_all"
          style="margin-left: 24px"
          @click="update_logisticsFun()"
          >保 存</el-button
        >
        <el-button
          class="bottom_all"
          @click="formdata6Fun(formData, '司机小票')"
          >发送司机</el-button
        >
        <el-button
          :disabled="formData.dataStatus != 3 && formData.dataStatus != 2"
          class="bottom_all"
          @click="formdata6Fun(formData, '客户小票')"
          >发送客户</el-button
        >
        <el-button class="bottom_all" @click="handlePrint(formData)"
          >打印纸质票</el-button
        >
      </span>
    </el-dialog>
    <!-- 信息补录 -->
    <el-dialog v-dialogDrag :visible.sync="look1Type1" width="900px">
      <span slot="title" class="dialog-title">信息补录</span>
      <div class="dialoginfo">
        <el-form
          ref="submit1_1"
          :rules="rules1"
          :inline="true"
          :model="formData1"
          label-width="130px"
        >
          <el-form-item prop="carNo" label="车牌号">
            <el-input
              v-model="formData1.carNo"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
            ></el-input>
          </el-form-item>
          <el-form-item
            v-if="UserInfo.adminStatus == 1"
            label="公司"
            prop="companyId"
            :rules="[
              { required: true, message: '请选择公司', trigger: 'blur' },
            ]"
          >
            <el-select
              ref="selection1"
              v-model="formData1.companyId"
              @change="setstationIdlist()"
            >
              <el-option
                v-for="item in companylist"
                :key="item.id"
                :label="item.name"
                :value="item.id"
              ></el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            label="站点"
            prop="productionSiteId"
            :rules="[
              { required: true, message: '请选择站点', trigger: 'blur' },
            ]"
          >
            <el-select
              ref="selection2"
              v-model="formData1.productionSiteId"
              @change="
                get_simple_organizationFun(formData1.productionSiteId),
                  $nextTick(() => {
                    formData1.productionSite = $refs.selection2.selectedLabel;
                  })
              "
            >
              <el-option
                v-for="item in siteIdList"
                :key="item.id"
                :label="item.name"
                :value="item.id"
              ></el-option>
            </el-select>
          </el-form-item>
          <el-form-item prop="proTime" label="生产时间">
            <el-date-picker
              v-model="formData1.proTime"
              type="datetime"
              value-format="yyyy-MM-dd HH:mm:ss"
              placeholder="请选择"
            ></el-date-picker>
          </el-form-item>
          <el-form-item prop="proNum" label="生产量(方)">
            <el-input
              v-model="formData1.proNum"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
              type="Number"
            ></el-input>
          </el-form-item>
          <el-form-item prop="residueNum" label="富余量(方)">
            <el-input
              v-model="formData1.residueNum"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
              type="Number"
            ></el-input>
          </el-form-item>
          <el-form-item prop="shiftTo" label="转入量(方)">
            <el-input
              v-model="formData1.shiftTo"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
              type="Number"
            ></el-input>
          </el-form-item>
          <el-form-item prop="faceValue" label="票面量(方)">
            <el-input
              v-model="formData1.faceValue"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
              type="Number"
            ></el-input>
          </el-form-item>
          <el-form-item
            prop="adjustResidueNum"
            label="调整余料量(方)"
            :rules="[
              { required: true, message: '请输入调整余料量', trigger: 'blur' },
            ]"
          >
            <el-input
              v-model="formData1.adjustResidueNum"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
              type="Number"
            ></el-input>
          </el-form-item>
          <el-form-item
            prop="adjustSignForNum"
            label="调整签收量(方)"
            :rules="[
              { required: true, message: '请输入调整签收量', trigger: 'blur' },
            ]"
          >
            <el-input
              v-model="formData1.adjustSignForNum"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
              type="Number"
            ></el-input>
          </el-form-item>
          <el-form-item
            prop="transportDistance"
            label="运输距离"
            :rules="[
              { required: true, message: '请输入运输距离', trigger: 'blur' },
            ]"
          >
            <el-input
              v-model="formData1.transportDistance"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
              type="Number"
            ></el-input>
          </el-form-item>
        </el-form>
        <div>
          <div style="padding-bottom: 10px">
            <el-button
              size="mini"
              class="bottom_all"
              style="margin-left: 0"
              @click="addItem()"
            >
              <i
                class="icon iconfont iconicon_button_add"
                style="font-size: 12px"
              ></i>
              添加
            </el-button>
          </div>
          <el-table
            :header-cell-style="{ background: '#f3f6f9' }"
            :cell-style="{ borderRight: 'none' }"
            border
            stripe
            style="width: 100%"
            :data="arrList1"
            tooltip-effect="dark"
          >
            <el-table-column label="泵类型" align="center" width="120">
              <template slot-scope="scope">
                <el-select
                  v-model="scope.row.pouringWayId"
                  placeholder="请选择"
                  style="width: 100%"
                  @change="changeItem(scope.row)"
                >
                  <el-option
                    v-for="(item, index) in pumpTypeList"
                    :key="index"
                    :label="item.itemName"
                    :value="item.id"
                  ></el-option>
                </el-select>
              </template>
            </el-table-column>
            <el-table-column label="高度/臂长(米)" align="center">
              <template slot-scope="scope">
                <el-input-number
                  v-model="scope.row.height"
                  :precision="0"
                  style="width: 100%"
                  :controls="false"
                ></el-input-number>
              </template>
            </el-table-column>
            <el-table-column label="浇筑量(方)" align="center">
              <template slot-scope="scope">
                <el-input-number
                  v-model="scope.row.num"
                  :precision="0"
                  style="width: 100%"
                  :controls="false"
                ></el-input-number>
              </template>
            </el-table-column>
            <el-table-column label="浇筑时间" align="center" width="220">
              <template slot-scope="scope">
                <el-date-picker
                  v-model="scope.row.createTime"
                  type="datetime"
                  value-format="yyyy-MM-dd HH:mm:ss"
                  placeholder="请选择"
                  style="width: 100%"
                ></el-date-picker>
              </template>
            </el-table-column>
            <el-table-column label="操作" align="left" prop="specification">
              <template slot-scope="scope">
                <el-button
                  size="mini"
                  class="bottom_two"
                  @click="deleteItem(scope.$index)"
                >
                  <i
                    class="icon iconfont iconicon_button_delete"
                    style="font-size: 12px"
                  ></i>
                  删除
                </el-button>
              </template>
            </el-table-column>
          </el-table>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="look1Type1 = false"
          >取 消</el-button
        >
        <el-button
          class="bottom_all"
          style="margin-left: 24px"
          @click="submit1_1()"
          >确 定</el-button
        >
      </span>
    </el-dialog>
    <!-- 空票签收 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="look1Type2"
      width="500px"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">空票签收</span>
      <div class="dialoginfo">
        <el-form
          ref="submit1_2"
          :rules="rules2"
          :inline="true"
          :model="formData2"
          label-width="110px"
        >
          <el-form-item prop="carNo" label="车牌号">
            <el-input
              v-model="formData2.carNo"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
            ></el-input>
          </el-form-item>
          <el-form-item prop="faceValue" label="票面量">
            <el-input
              v-model="formData2.faceValue"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
            ></el-input>
          </el-form-item>
          <el-form-item prop="signForNum" label="签收量">
            <el-input
              v-model="formData2.signForNum"
              :rows="5"
              resize="none"
              placeholder="请输入"
              clearable
            ></el-input>
          </el-form-item>
        </el-form>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="look1Type2 = false"
          >取 消</el-button
        >
        <el-button
          class="bottom_all"
          style="margin-left: 24px"
          @click="submit1_2()"
          >保存</el-button
        >
      </span>
    </el-dialog>
    <!-- 退货 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="look2Type"
      width="600px"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">退货</span>
      <div class="dialoginfo">
        <el-form
          ref="reffromDate"
          :inline="true"
          :model="formData3"
          label-width="110px"
        >
          <el-form-item>
            <el-input
              v-model="formData3.remark"
              :rows="5"
              resize="none"
              style="width: 520px"
              type="textarea"
              placeholder="请输入"
              clearable
            ></el-input>
          </el-form-item>
        </el-form>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="look2Type = false"
          >取 消</el-button
        >
        <el-button
          class="bottom_all"
          style="margin-left: 24px"
          @click="submit2()"
          >确 定</el-button
        >
      </span>
    </el-dialog>
    <!-- 余料处理 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="look3Type"
      width="70%"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">余料处理</span>
      <div class="dialoginfo">
        <el-form
          ref="formData4"
          :disabled="currenindex === 3"
          :rules="rules4"
          :inline="true"
          :model="formData4"
          label-width="110px"
        >
          <el-form-item prop="exceptionType" label="类型">
            <el-select v-model="formData4.exceptionType" placeholder="请选择">
              <el-option label="转料" :value="1"></el-option>
              <el-option label="报废" :value="2"></el-option>
              <el-option label="积鼓" :value="3"></el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            v-if="formData4.exceptionType == 1"
            prop="stationId"
            label="站点"
          >
            <span slot="label" style="color: #ff0000">转料站点</span>
            <el-select
              ref="selectstationId"
              v-model="formData4.stationId"
              :disabled="this.list2Info.surplusStatus === 2"
              placeholder="请选择"
              @change="
                getEngineeringIdListFun(formData4.stationId),
                  $nextTick(() => {
                    formData4.station = $refs.selectstationId.selectedLabel;
                  })
              "
            >
              <el-option
                v-for="(v, k) in pointIdListArr"
                :key="k"
                :label="v.name"
                :value="v.id"
              ></el-option>
            </el-select>
          </el-form-item>
          <el-form-item
            v-if="formData4.exceptionType == 1"
            prop="turnNum"
            label="转料量"
          >
            <span slot="label" style="color: #ff0000">转料量</span>
            <el-input
              v-model="formData4.turnNum"
              :rows="5"
              resize="none"
              style="width: 240px"
              clearable
            >
              <template slot="append">方</template>
            </el-input>
          </el-form-item>
          <el-form-item v-if="formData4.exceptionType == 1" label="备注">
            <el-input v-model="formData4.remark"></el-input>
          </el-form-item>
          <div
            v-if="
              formData4.exceptionType == 1 &&
              (formData4.stationId === list2Info.productionSiteId ||
                list2Info.surplusStatus === 2)
            "
          >
            <!-- <el-form-item v-if="formData4.exceptionType == 1" prop="engineeringId" label="接收工程方">
              <span slot="label" style="color: #ff0000">接收工程</span>
              <el-select ref="selectengineering" v-model="formData4.engineeringId" placeholder="请选择" @change="
                  $nextTick(() => {
                    formData4.engineering = $refs.selectengineering.selectedLabel;
                  })
                ">
                <el-option v-for="(v, k) in engineeringIdList" :key="k" :label="v.enginnerName" :value="v.enginnerId"></el-option>
              </el-select>
            </el-form-item> -->
            <el-form-item v-if="formData4.exceptionType == 1" label="接收工程">
              <el-input
                v-model="formData4.engineeringName"
                placeholder="请输入"
              />
            </el-form-item>
            <el-form-item v-if="formData4.exceptionType == 1" label="浇筑部位">
              <el-input v-model="formData4.structuralParts"></el-input>
            </el-form-item>
            <el-form-item v-if="formData4.exceptionType == 1">
              <el-button class="bottom_all_two" @click="getPlanPage(1)"
                >查询计划</el-button
              >
            </el-form-item>
          </div>
        </el-form>
        <el-table
          v-if="
            formData4.exceptionType == 1 &&
            (formData4.stationId === list2Info.productionSiteId ||
              list2Info.surplusStatus === 2)
          "
          :header-cell-style="{ background: '#f3f6f9' }"
          :cell-style="{ borderRight: 'none' }"
          border
          stripe
          style="width: 100%"
          :data="surplusList2"
          tooltip-effect="dark"
        >
          <el-table-column width="55">
            <template slot-scope="scope">
              <el-radio
                v-model="radio"
                :label="scope.row"
                @change="radioFun(scope.row)"
                >{{ "" }}</el-radio
              >
            </template>
          </el-table-column>
          <el-table-column
            label="订单号"
            align="center"
            prop="orderNo"
          ></el-table-column>
          <el-table-column
            label="工程名称"
            align="center"
            prop="engineeringName"
          ></el-table-column>
          <el-table-column
            label="浇筑部位"
            align="center"
            prop="structuralParts"
          ></el-table-column>
          <el-table-column
            label="产品名称"
            align="center"
            prop="productName"
          ></el-table-column>
          <el-table-column
            label="浇筑时间"
            align="center"
            prop="pouringTime"
          ></el-table-column>
        </el-table>
        <el-pagination
          :current-page.sync="surplusPage2"
          :page-size="10"
          layout="prev,pager,next"
          :total="surplusTotal2"
          @current-change="(page) => this.getPlanPage(page)"
        ></el-pagination>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="look3Type = false"
          >取 消</el-button
        >
        <el-button
          v-show="currenindex !== 3"
          class="bottom_all"
          style="margin-left: 24px"
          @click="submit3()"
          >确定</el-button
        >
      </span>
    </el-dialog>
    <!-- 检测 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="look5Type"
      width="500px"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">检测</span>
      <div class="dialoginfo">
        <el-form
          ref="formData5"
          :rules="rules5"
          :inline="true"
          :model="formData5"
          label-width="110px"
        >
          <el-form-item prop="detectionTypeId" label="检测类型">
            <el-select v-model="formData5.detectionTypeId" placeholder="请选择">
              <el-option
                v-for="(v, k) in detectionTypeIdList"
                :key="k"
                :label="v.name"
                :value="v.id"
              ></el-option>
            </el-select>
          </el-form-item>
        </el-form>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="look5Type = false"
          >取 消</el-button
        >
        <el-button
          class="bottom_all"
          style="margin-left: 24px"
          @click="submit5()"
          >确 定</el-button
        >
      </span>
    </el-dialog>
    <!-- 过磅核对 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="look4Type"
      width="740px"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">过磅核对</span>
      <div class="dialoginfo">
        <el-form
          ref="formData5"
          :inline="true"
          :model="info4"
          label-width="110px"
        >
          <el-form-item label="核对票面量">
            <el-input
              v-model="info4.clientFaceValue"
              :rows="5"
              resize="none"
              disabled
            ></el-input>
          </el-form-item>
          <el-form-item label="核对余料量">
            <el-input
              v-model="info4.clientResidueNum"
              :rows="5"
              resize="none"
              disabled
            ></el-input>
          </el-form-item>
          <div class="FZYimgMp4list">
            <div v-for="(v, k) in info4.picPathList" :key="k">
              <el-image
                v-if="$options.filters.imgMp4TypeFun(v) == 'img'"
                :src="v"
                :preview-src-list="srcList"
                style="
                  width: 200px;
                  height: 200px;
                  margin: 5px 10px;
                  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35);
                "
                :z-index="10000"
                @click="srcList = [v]"
              ></el-image>
              <video
                v-else
                width="200"
                height="200"
                style="
                  margin: 5px 10px;
                  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35);
                "
                :src="v"
                controls
              >
                您的浏览器不支持 HTML5 video 标签。
              </video>
            </div>
          </div>
        </el-form>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="look4Type = false"
          >关 闭</el-button
        >
      </span>
    </el-dialog>
    <!-- 卸料视频 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="look6Type"
      width="740px"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">卸料视频</span>
      <div class="dialoginfo">
        <div class="FZYimgMp4list">
          <div v-if="look6List && look6List.length > 0">
            <video
              v-for="(item, index) in look6List"
              :key="index"
              width="300"
              height="300"
              style="
                margin: 5px 10px;
                box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35);
              "
              :src="'/file/' + item"
              controls
            >
              您的浏览器不支持 HTML5 video 标签。
            </video>
          </div>
          <p v-else>暂无卸料视频</p>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <div v-if="list2Info.dataStatus == 4">
          <el-button class="bottom_all_two" @click="look6Type = false"
            >关 闭</el-button
          >
        </div>
        <div v-else>
          <el-button
            class="bottom_all_two"
            @click="(look6Type = false), update_data_typeFun(list2Info, 2)"
            >不合格</el-button
          >
          <el-button
            class="bottom_all"
            style="margin-left: 24px"
            @click="update_data_typeFun(list2Info, 1)"
            >合 格</el-button
          >
        </div>
      </span>
    </el-dialog>
    <!-- 车辆排队信息 -->
    <el-dialog v-dialogDrag :visible.sync="look1Type5" width="900px">
      <span slot="title" class="dialog-title">车辆排队信息</span>
      <div class="dialoginfo">
        <el-table
          :header-cell-style="{ background: '#f3f6f9' }"
          :cell-style="{ borderRight: 'none' }"
          border
          stripe
          style="width: 100%"
          :data="vehicleQueuingList"
          tooltip-effect="dark"
          height="500"
        >
          <el-table-column
            label="排序"
            type="index"
            align="center"
          ></el-table-column>
          <el-table-column
            label="车牌号"
            align="center"
            prop="carNo"
          ></el-table-column>
          <el-table-column
            label="排队时间"
            align="center"
            prop="createTime"
          ></el-table-column>
          <el-table-column label="操作" align="center">
            <template slot-scope="scope">
              <el-button
                size="mini"
                class="bottom_two"
                @click="handleCancel(scope.row)"
              >
                取消排队
              </el-button>
              <el-button
                size="mini"
                class="bottom_two"
                @click="handleCancel2(scope.row)"
              >
                强制取消排队
              </el-button>
            </template>
          </el-table-column>
        </el-table>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="look1Type5 = false"
          >关 闭</el-button
        >
      </span>
    </el-dialog>
    <!-- 打印弹窗 -->
    <el-dialog v-dialogDrag :visible.sync="look1Type6" width="950px">
      <span slot="title" class="dialog-title">{{ look1Type6Text }}</span>
      <div class="dialoginfo">
        <div>
          <el-card id="dy" shadow="always">
            <div class="top">
              <div>四川华西绿舍建材有限公司</div>
              <div>
                商品混凝土供货单 <small>No:</small
                ><img :src="formdata6.codeUrl" alt="" />
              </div>
              <div>
                <span>发货时间：</span>
                <span>流水号：</span>
              </div>
            </div>
            <div class="table">
              <div class="div1">
                <div>
                  <span>项目名称：{{ formdata6.engineeringName }}</span>
                </div>
                <div>
                  <span>签收人：</span>
                </div>
              </div>
              <div class="div1">
                <div>
                  <span>浇筑部位：{{ formdata6.structuralParts }}</span>
                </div>
                <div>
                  <span>砼标号：{{ formdata6.label }}</span>
                </div>
              </div>
              <div class="div2">
                <div>浇筑方式</div>
                <div>{{ formdata6.pouringMethod }}</div>
                <div>本车数量(m3)</div>
                <div></div>
                <div>累计车数</div>
                <div></div>
              </div>
              <div class="div2">
                <div>车牌号</div>
                <div>{{ formdata6.carNo }}</div>
                <div>发货人</div>
                <div></div>
                <div>进泵时间</div>
                <div></div>
              </div>
              <div class="div2">
                <div>司机</div>
                <div></div>
                <div>泵工签字</div>
                <div></div>
                <div>离泵时间</div>
                <div></div>
              </div>
              <div class="div2">
                <div>高度/臂长</div>
                <div></div>
                <div>搅拌站点</div>
                <div></div>
                <div>小方量运输补差</div>
                <div></div>
              </div>
              <div class="div3">
                <div>备注：</div>
                <div></div>
              </div>
              <div class="div4">
                <div>
                  <i class="el-icon-warning" style="font-size: 30px"></i>
                </div>
                <div>
                  <div>
                    1、请认真复核票面信息，做好交货检验，验收合格后方可签收、浇筑。
                  </div>
                  <div>
                    2、预拌混凝土送到后，严禁加水，请及时浇筑；请按照规范要求组织实验浇筑、振捣、养护、拆模工作。
                  </div>
                  <div>
                    3、请施工单位高度重视上述工作，因上述工作不符合要求而导致的质量问题我司概不负责。
                  </div>
                </div>
              </div>
            </div>
            <div class="bottom">
              <span>服务投诉电话：</span>
              <span>技术服务电话：</span>
              <span>站内调度电话：</span>
            </div>
          </el-card>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="look1Type6 = false"
          >关 闭</el-button
        >
        <el-button
          class="bottom_all"
          style="margin-left: 24px"
          @click="doPrint()"
          >打 印</el-button
        >
        <el-button
          v-show="showSend"
          v-if="look1Type6Text == '司机小票'"
          :disabled="formdata6.dataStatus != 1"
          class="bottom_all"
          style="margin-left: 24px"
          @click="driverReceiptsFun(formdata6)"
          >发 送</el-button
        >
        <el-button
          v-show="showSend"
          v-else
          :disabled="formdata6.dataStatus != 3 && formdata6.dataStatus != 6"
          class="bottom_all"
          style="margin-left: 24px"
          @click="customerFun(formdata6)"
          >发 送</el-button
        >
      </span>
    </el-dialog>
    <!-- 发料通知 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="formData5Type"
      width="800px"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">发料通知</span>
      <div class="dialoginfo">
        <div class="FZYulli">
          <div style="margin-bottom: 5px">
            工程名称：{{ formData5.engineeringName }}
          </div>
          <div style="margin-bottom: 5px">
            订单编号：{{ formData5.orderNo }}
          </div>
          <div style="margin-bottom: 5px">
            产品名称：{{ formData5.productName }}
          </div>
        </div>
        <el-table
          :header-cell-style="{ background: '#f3f6f9' }"
          :cell-style="{ borderRight: 'none' }"
          border
          stripe
          style="width: 100%"
          :data="formData5.list"
          tooltip-effect="dark"
        >
          <el-table-column
            label="序号"
            type="index"
            width="55"
          ></el-table-column>
          <el-table-column
            label="浇筑部位"
            align="center"
            prop="structuralParts"
          ></el-table-column>
          <el-table-column
            label="浇筑方式"
            align="center"
            prop="pouringMethod"
          ></el-table-column>
          <el-table-column
            label="发料时间"
            align="center"
            prop="sendTime"
          ></el-table-column>
          <el-table-column
            label="发料方量"
            align="center"
            prop="sendNum"
          ></el-table-column>
          <el-table-column label="状态" align="center">
            <template slot-scope="scope">
              {{ ["未处理", "已处理"][scope.row.handleStatus] }}
            </template>
          </el-table-column>
          <el-table-column label="操作" align="center">
            <template slot-scope="scope">
              <el-button
                v-if="scope.row.handleStatus === 0"
                class="bottom_all_two"
                @click="handleSubmit(scope.row)"
                >处理</el-button
              >
            </template>
          </el-table-column>
        </el-table>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="formData5Type = false"
          >关闭</el-button
        >
      </span>
    </el-dialog>
    <!-- 生成数据 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="scsjType"
      width="600px"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">生成数据</span>
      <div class="dialoginfo">
        <el-select
          v-model="scsjListId"
          placeholder="请选择"
          style="width: 100%"
        >
          <el-option
            v-for="(item, index) in scsjList"
            :key="index"
            :label="item.carNo"
            :value="item.carNo"
          ></el-option>
        </el-select>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="scsjType = false"
          >关闭</el-button
        >
        <el-button class="bottom_all_two" @click="save_fake_erp_dataFun"
          >提交</el-button
        >
      </span>
    </el-dialog>
    <div id="dyBox">
      <div class="qrcode-container">
        <img class="qrcode" :src="formdata6.codeUrl" alt="" />
      </div>
      <el-row style="margin-bottom: 20px">
        <el-col :span="18" style="padding-left: 150px">{{
          formdata6.proTime
        }}</el-col>
        <el-col :span="6">{{ formdata6.serialNumber }}</el-col>
      </el-row>
      <el-row style="margin-bottom: 20px" type="flex" align="middle">
        <el-col :span="14" style="padding-left: 180px">{{
          formdata6.engineeringName
        }}</el-col>
        <el-col :span="10"></el-col>
      </el-row>
      <el-row style="margin-bottom: 30px" type="flex" align="middle">
        <el-col :span="14" style="padding-left: 180px">{{
          formdata6.structuralParts
        }}</el-col>
        <el-col :span="10" style="padding-left: 300px">{{
          formdata6.label
        }}</el-col>
      </el-row>
      <el-row style="margin-bottom: 20px">
        <el-col style="padding-left: 150px" :span="10">{{
          formdata6.pouringMethod
        }}</el-col>
        <el-col style="text-align: center" :span="9">{{
          formdata6.faceValue
        }}</el-col>
        <el-col :span="5">{{ formdata6.cumulativeTrains }}</el-col>
      </el-row>
      <el-row style="margin-bottom: 20px">
        <el-col style="padding-left: 150px" :span="10">{{
          formdata6.carNo + formdata6.driver
        }}</el-col>
        <el-col style="text-align: center" :span="9">{{
          formdata6.baseuser
        }}</el-col>
        <el-col :span="5"></el-col>
      </el-row>
      <el-row>
        <el-col style="padding-left: 150px" :span="10">{{
          formdata6.productionSite
        }}</el-col>
        <el-col style="text-align: center" :span="9"></el-col>
        <el-col :span="5"></el-col>
      </el-row>
      <el-row>
        <el-col style="padding-left: 150px" :span="10">{{
          formdata6.remark
        }}</el-col>
      </el-row>
    </div>
    <!-- 余料处理列表 -->
    <el-dialog
      v-dialogDrag
      :visible.sync="surplusVisible"
      width="90%"
      :close-on-click-modal="false"
    >
      <span slot="title" class="dialog-title">余料处理信息</span>
      <div class="dialoginfo">
        <div class="tabtop" style="margin: 0px 0px 20px">
          <div @click="choose(1)">
            <div :class="currenindex == 1 ? 'active' : 'text'">未处理</div>
          </div>
          <div @click="choose(3)">
            <div :class="currenindex == 3 ? 'active' : 'text'">已处理</div>
          </div>
        </div>
        <div style="margin-bottom: 10px">
          <el-input v-model="carNo" placeholder="请输入车牌号"></el-input>
          <el-button
            style="margin-left: 10px"
            class="bottom_all_two"
            @click="initSurplusList"
            >查询</el-button
          >
        </div>
        <el-table
          :header-cell-style="{ background: '#f3f6f9' }"
          :cell-style="{ borderRight: 'none' }"
          border
          stripe
          style="width: 100%"
          :data="surplusList"
          tooltip-effect="dark"
        >
          <el-table-column
            label="物流号"
            align="center"
            prop="code"
          ></el-table-column>
          <el-table-column
            label="车牌号"
            align="center"
            prop="carNo"
          ></el-table-column>
          <el-table-column
            label="生产站点"
            align="center"
            prop="productionSite"
          ></el-table-column>
          <el-table-column
            label="转料站点"
            align="center"
            prop="turnStationName"
          ></el-table-column>
          <el-table-column
            label="余料量"
            align="center"
            prop="residueNum"
          ></el-table-column>
          <el-table-column label="处理类型" align="center">
            <template slot-scope="scope">
              <span>{{
                ["", "转料", "报废", "积鼓"][scope.row.exceptionType]
              }}</span>
            </template>
          </el-table-column>
          <el-table-column
            label="离场时间"
            align="center"
            prop="leaveTime"
          ></el-table-column>
          <el-table-column
            label="打票时间"
            align="center"
            prop="proTime"
          ></el-table-column>
          <el-table-column
            label="回站过磅时间"
            align="center"
            prop="weightTime"
          ></el-table-column>
          <el-table-column label="余料状态" align="center">
            <template slot-scope="scope">
              <span>{{
                ["", "待处理", "待提交", "已处理"][scope.row.surplusStatus]
              }}</span>
            </template>
          </el-table-column>
          <el-table-column
            label="备注"
            align="center"
            prop="remark"
          ></el-table-column>
          <el-table-column label="操作" align="center">
            <template slot-scope="scope">
              <el-button
                class="bottom_all_two"
                @click="handleClick(scope.row)"
                >{{ currenindex === 1 ? "处理" : "查看" }}</el-button
              >
            </template>
          </el-table-column>
        </el-table>
        <el-pagination
          :current-page.sync="surplusPage"
          :page-size="10"
          layout="prev,pager,next"
          :total="surplusTotal"
          @current-change="initSurplusList()"
        ></el-pagination>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button class="bottom_all_two" @click="surplusVisible = false"
          >关闭</el-button
        >
      </span>
    </el-dialog>

    <!-- 翻料处理 -->
    <TurningDisposeDialog
      :visible.sync="turningDisposeVisible"
      :config="turningDisposeConfig"
    />
    <!-- 异常处理 -->
    <AbnormalDialog :visible.sync="abnormalVisible" :config="abnormalConfig" />
  </div>
</template>

<script>
import TurningDisposeDialog from "@/views/platform/ICPS/smart/schedul/components/TurningDisposeDialog";
import AbnormalDialog from "@/views/platform/ICPS/smart/schedul/components/AbnormalDialog";
import mixin from "@/mixins/ICPSmixin.js";
import {
  queryPage,
  get_dispatch_logistics_page,
  save_information_collection,
  save_empty_ticket_sign,
  handler_operation_notice,
  update_remark,
  handler_operation_notice_weighing,
  qualityDetectiongetList,
  handler_operation_notice_check,
  get_engineering_list,
  notice_customer,
  update_adjust_num,
  get_weighing_check,
  save_fake_erp_data,
  update_data_type,
  set_small_quantities_delta,
  get_queue_up_inform,
  update_pump_line_use,
  backManSign,
  driverReceipts,
  noticeNotice_list,
  update_confirm_and_data_status,
  get_queue_up_inform_by_station,
  update_logistics,
  cancelLineUp,
  forceCancel,
  handlerExceptionNew,
  updateNotice,
} from "@/api/smart/schedul/j.js";
import { plan_list, getPlanPage } from "@/api/smart/schedul/d";
import { getUserInfo } from "@/utils/auth.js";
import {
  getDicType,
  getcompany,
  getUserAutList,
  get_simple_organization,
  getStationByCompanyId,
} from "@/api/common.js";
export default {
  mixins: [mixin],
  components: {
    TurningDisposeDialog,
    AbnormalDialog,
  },
  data() {
    let stationId = (rule, value, callback) => {
      if (!value && this.formData4.exceptionType == 1) {
        return callback(new Error("请选择站点"));
      } else {
        callback();
      }
    };
    let turnNum = (rule, value, callback) => {
      if (!value && this.formData4.exceptionType == 1) {
        return callback(new Error("请输入转料量"));
      } else {
        callback();
      }
    };
    let engineeringId = (rule, value, callback) => {
      if (!value && this.formData4.exceptionType == 1) {
        return callback(new Error("请选择接收工程"));
      } else {
        callback();
      }
    };
    return {
      abnormalConfig: {},
      abnormalVisible: false,
      turningDisposeConfig: {},
      turningDisposeVisible: false,
      carNo: "",
      formData5Type: false,
      formdata6: {},
      look1Type6: false,
      startTimDateEndTimDate: [],
      timer: 0,
      UserInfo: "",
      companyId: "",
      companylist: [],
      stationId: "",
      siteIdList: [],
      principalName: "",
      look6Type: false,
      look6List: "",
      orderType: "",
      /*表格增删改查及下载接口*/
      queryPage: queryPage,
      /*表格数据*/
      /*表单页类型，0为无树状，1为有树状，有树状在el-main加上display:flex*/
      pagesType: 0,
      tableA: [
        { label: "订单编号", width: "auto", prop: "orderNo", status: true },
        { label: "物流运输", width: "177", prop: "", status: true },
        {
          label: "发料通知",
          width: "120",
          prop: "",
          status: true,
        },
        {
          label: "工程名称",
          width: "120",
          prop: "engineeringName",
          status: true,
        },
        {
          label: "浇筑部位",
          width: "120",
          prop: "structuralParts",
          status: true,
        },
        {
          label: "浇筑用量（方）",
          width: "auto",
          prop: "pouringNum",
          status: true,
        },
        { label: "产品名称", width: "120", prop: "productName", status: true },
        {
          label: "浇筑方式",
          width: "auto",
          prop: "pouringMethod",
          status: true,
        },
        {
          label: "浇筑时间",
          width: "120",
          prop: "pouringTime",
          status: true,
        },
        {
          label: "累计车数",
          width: "100",
          prop: "logisticsCarNum",
          status: true,
        },
        {
          label: "累计票面量",
          width: "100",
          prop: "logisticsCarFaceValue",
          status: true,
        },
        {
          label: "联系人",
          width: "auto",
          prop: "person",
          status: true,
        },
        {
          label: "联系电话",
          width: "120",
          prop: "phoneNum",
          status: true,
        },
        { label: "订单类型", width: "auto", prop: "productName", status: true },
      ],
      tableData: [],
      tableData2: [],
      tableB: [
        {
          label: "运输号",
          width: "180",
          prop: "code",
          status: true,
        },
        {
          label: "异常管理",
          width: "100",
          prop: "",
          status: true,
        },
        {
          label: "操作通知",
          width: "100",
          prop: "",
          status: true,
        },
        {
          label: "车牌号",
          width: "auto",
          prop: "carNo",
          status: true,
        },
        {
          label: "生产时间",
          width: "100",
          prop: "proTime",
          status: true,
        },
        {
          label: "生产量（方）",
          width: "auto",
          prop: "proNum",
          status: true,
        },
        {
          label: "富余量（方）",
          width: "auto",
          prop: "residueNum",
          status: true,
        },
        {
          label: "转入量",
          width: "auto",
          prop: "shiftTo",
          status: true,
        },
        {
          label: "票面量（方）",
          width: "auto",
          prop: "faceValue",
          status: true,
        },
        {
          label: "生产站点",
          width: "auto",
          prop: "productionSite",
          status: true,
        },
        {
          label: "生产线",
          width: "auto",
          prop: "proLine",
          status: true,
        },
        {
          label: "容重",
          width: "auto",
          prop: "mixProportion",
          status: true,
        },
        {
          label: "异常调整量",
          width: "auto",
          prop: "adjustNum",
          status: true,
        },
        {
          label: "余斜量（方）",
          width: "auto",
          prop: "residueNum",
          status: true,
        },
        {
          label: "签收量（方）",
          width: "auto",
          prop: "signForNum",
          status: true,
        },
        {
          label: "调整余斜量（方）",
          width: "auto",
          prop: "residueNum",
          status: true,
        },
        {
          label: "调整签收量（方）",
          width: "auto",
          prop: "signForNum",
          status: true,
        },
        {
          label: "运输距离",
          width: "auto",
          prop: "transportDistance",
          status: true,
        },
        {
          label: "内部余料",
          width: "auto",
          prop: "frontIsClout",
          status: true,
        },
        {
          label: "客户余料",
          width: "auto",
          prop: "companyIsClout",
          status: true,
        },
        {
          label: "客户小方量运输补差(方)",
          width: "130",
          prop: "",
          status: true,
        },
        {
          label: "运输单位小方量补差(方)",
          width: "130",
          prop: "",
          status: true,
        },
        {
          label: "浇筑方式",
          width: "auto",
          prop: "",
          status: true,
        },
        {
          label: "高度/臂长(米)",
          width: "auto",
          prop: "",
          status: true,
        },
        {
          label: "浇筑量(方)",
          width: "auto",
          prop: "",
          status: true,
        },
        {
          label: "泵送时间",
          width: "160",
          prop: "",
          status: true,
        },
        {
          label: "泵管使用",
          width: "230",
          prop: "",
          status: true,
        },
        {
          label: "运输数据来源",
          width: "240",
          prop: "",
          status: true,
        },
        {
          label: "状态",
          width: "auto",
          prop: "",
          status: true,
        },
        {
          label: "卸料视频",
          width: "auto",
          prop: "",
          status: true,
        },
        {
          label: "卸料视频审核状态",
          width: "auto",
          prop: "",
          status: true,
        },
        {
          label: "签收类型",
          width: "100",
          prop: "signType",
          status: true,
        },
        {
          label: "签收时间",
          width: "100",
          prop: "affirmTime",
          status: true,
        },
        {
          label: "签收人",
          width: "100",
          prop: "receiver",
          status: true,
        },
        {
          label: "离场类型",
          width: "100",
          prop: "applyType",
          status: true,
        },
      ],
      rules1: {
        proTime: [
          { required: true, message: "请选择生产时间", trigger: "blur" },
        ],
        carNo: [{ required: true, message: "请输入车牌号", trigger: "blur" }],
        proNum: [
          { required: true, message: "请输入生产量(方)", trigger: "blur" },
        ],
        lossNum: [
          { required: true, message: "请输入损耗量(方)", trigger: "blur" },
        ],
        shiftTo: [
          { required: true, message: "请输入转入量(方)", trigger: "blur" },
        ],
        faceValue: [
          { required: true, message: "请输入票面量(方)", trigger: "blur" },
        ],
        adjustNum: [
          { required: true, message: "请输入异常调整量(方)", trigger: "blur" },
        ],
        residueNum: [
          { required: true, message: "请输入富余量(方)", trigger: "blur" },
        ],
        signForNum: [
          { required: true, message: "请输入签收量(方)", trigger: "blur" },
        ],
      },
      rules2: {
        carNo: [{ required: true, message: "请输入车牌号", trigger: "blur" }],
        faceValue: [
          { required: true, message: "请输入票面量", trigger: "blur" },
        ],
        signForNum: [
          { required: true, message: "请输入签收量", trigger: "blur" },
        ],
      },
      rules4: {
        exceptionType: [
          { required: true, message: "请选择类型", trigger: "change" },
        ],
        stationId: [{ validator: stationId, trigger: "change" }],
        turnNum: [{ validator: turnNum, trigger: "blur" }],
        engineeringId: [{ validator: engineeringId, trigger: "change" }],
        engineeringName: [{ required: true, message: "请输入" }],
      },
      rules5: {
        detectionTypeId: [
          { required: true, message: "请选择检测类型", trigger: "change" },
        ],
      },
      fromDate: {},
      ToViewType: false,
      look1Type1: false,
      look1Type2: false,
      look2Type: false,
      look3Type: false,
      look5Type: false,
      surplusVisible: false,
      companyNatureIdlist: [],
      formTop: {},
      formData1: {},
      formData2: {},
      formData3: { remark: "" },
      formData4: {
        exceptionType: "",
        stationId: "",
        engineeringId: "",
        structuralParts: "",
      },
      formData5: {},
      pointIdList: [],
      pointIdListArr: [],
      detectionTypeIdList: [],
      planId: "",
      proId: "",
      markSalesReturn: "",
      list1Info: {},
      list2Info: {},
      engineeringIdList: [],
      formData: {},
      lookType: false,
      look4Type: false,
      info4: {},
      pumpTypeList: [],
      arrList1: [],
      look1Type5: false,
      vehicleQueuingList: [],
      look1Type6Text: "",
      scsjType: false,
      scsjList: [],
      surplusList: [{}],
      surplusList2: [],
      scsjListId: "",
      surplusPage: 1,
      surplusPage2: 1,
      surplusTotal: 0,
      surplusTotal2: 0,
      showSend: false,
      currenindex: 1,
      planList: [],
      radio: "",
      rowData: "",
    };
  },
  async created() {
    this.UserInfo = await getUserInfo();
    if (this.UserInfo.adminStatus == 1) {
      /**通过typeId为公司类型id查询所有公司 */
      getcompany({ typeId: "19da56b9e85648059e3cf1e7da497da4" }).then((res) => {
        this.companylist = res.data;
      });
    } else {
      this.siteIdList = await getUserAutList(true);
      this.stationId = this.siteIdList[0]?.id;
    }
    this.gettableData();
    qualityDetectiongetList().then((res) => {
      let arr = res.data.types.filter(
        (item) => item.dataType == 2 && item.id != 6 && item.id != 8
      );
      this.detectionTypeIdList = arr;
    });
    //查询账号公司下所有站点
    this.pointIdListArr = await getUserAutList(true);
    getDicType({ code: "castingType" }).then((res) => {
      res.data.items.map((v1) => (v1.type = 1));
      this.pumpTypeList = res.data.items;
      getDicType({
        code: "pouringMethod",
      }).then((res) => {
        res.data.items.map((v2) => (v2.type = 2));
        this.pumpTypeList = [...this.pumpTypeList, ...res.data.items];
      });
    });
  },
  methods: {
    // 翻料处理
    handleTurning() {
      this.turningDisposeConfig = {};
      this.turningDisposeVisible = true;
    },
    handleSubmit(data) {
      this.$confirm("该发料是否已在erp中安排生产?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        cancelButtonClass: "bottom_all_two",
        confirmButtonClass: "bottom_all",
        type: "warning",
      }).then(() => {
        updateNotice({ id: data.id, handleStatus: 1 }).then((res) => {
          if (res.code === 1001) {
            this.$message.success("操作成功");
            this.look5_0Fun(this.rowData);
          }
        });
      });
    },
    choose(num) {
      this.currenindex = num;
      this.surplusPage = 1;
      this.initSurplusList();
    },
    radioFun(data) {
      console.log(data);
      this.radio = data;
    },
    handleSerach() {
      if (!this.formData4.engineeringId) {
        this.$message.warning("请选择接收工程");
        return;
      }
      const params = {
        engineeringId: this.formData4.engineeringId,
        structuralParts: this.formData4.structuralParts,
      };
      plan_list(params).then((res) => {
        if (res.code === 1001) {
          this.planList = res.data;
        }
      });
    },
    getPlanPage(page) {
      this.surplusPage2 = page;
      const params = {
        page,
        pageSize: 10,
        // engineeringId: this.formData4.engineeringId,
        engineeringName: this.formData4.engineeringName,
        structuralParts: this.formData4.structuralParts,
      };
      getPlanPage(params).then((res) => {
        if (res && res.code === 1001) {
          this.surplusList2 = res.data.data;
          this.surplusTotal2 = res.data.totalRows;
        }
      });
    },
    handleCancel(data) {
      this.$confirm("确定取消排队?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        cancelButtonClass: "bottom_all_two",
        confirmButtonClass: "bottom_all",
        type: "warning",
      }).then(() => {
        cancelLineUp({ carNo: data.carNo }).then((res) => {
          if (res.code == 1001) {
            this.$message({
              type: "success",
              message: "取消成功!",
            });
            this.get_queue_up_informFun();
          }
        });
      });
    },
    handleCancel2(data) {
      this.$confirm("确定强制取消排队?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        cancelButtonClass: "bottom_all_two",
        confirmButtonClass: "bottom_all",
        type: "warning",
      }).then(() => {
        forceCancel({ carNo: data.carNo }).then((res) => {
          if (res.code == 1001) {
            this.$message({
              type: "success",
              message: "取消成功!",
            });
            this.get_queue_up_informFun();
          }
        });
      });
    },
    look5_0Fun(e) {
      this.rowData = e;
      this.formData5Type = true;
      noticeNotice_list({ planId: e.id }).then((res) => {
        this.formData5.list = [];
        this.formData5.list = res.data;
        this.formData5.engineeringName = e.engineeringName;
        this.formData5.orderNo = e.orderNo;
        this.formData5.productName = e.productName;
        this.$forceUpdate();
      });
    },
    /**打印*/
    doPrint() {
      const style = "@page {margin:0 auto};"; //去掉页眉页脚
      this.$print({
        style, //去掉页眉页脚
        printable: "dyBox",
        type: "html",
        maxWidth: "auto",
        font_size: "auto",
        targetStyles: ["*"],
        ignoreElements: ["no-print", "bc", "gb"],
      });
    },
    formdata6Fun(e, name) {
      this.look1Type6 = true;
      this.formdata6 = e;
      this.look1Type6Text = name;
      this.showSend = true;
      driverReceipts({ code: e.code }).then((res) => {
        if (res.code == 1001) {
          this.formdata6 = res.data;
          this.formdata6.codeUrl = "file/" + this.formdata6.codeUrl;
        }
      });
    },
    handlePrint(e) {
      this.look1Type6 = true;
      this.formdata6 = e;
      this.look1Type6Text = "司机小票";
      this.showSend = false;
      driverReceipts({ code: e.code }).then((res) => {
        if (res.code == 1001) {
          this.formdata6 = res.data;
          this.formdata6.codeUrl = "file/" + this.formdata6.codeUrl;
        }
      });
    },
    /**司机小票发送 */
    driverReceiptsFun() {
      update_confirm_and_data_status({
        id: this.formdata6.id,
        dataStatus: 2,
      }).then((res) => {
        if (res.code == 1001) {
          this.$message({
            type: "success",
            message: "发送成功!",
          });
          this.look1Type6 = false;
          this.ToViewTypeFun();
        }
      });
    },
    changeItem(e) {
      e.pouringWay = this.pumpTypeList.find(
        (v) => v.id == e.pouringWayId
      ).itemName;
    },
    deleteItem(index) {
      this.arrList1.splice(index, 1);
    },
    /**信息补录 arrList1 */
    addItem() {
      this.arrList1.push({
        pouringWayId: "", //泵类型id
        pouringWay: "", //泵类型
        num: "", //方量
        height: "", //臂长
        createTime: "", //浇筑时间
      });
    },
    /**通过站点查询公司 */
    get_simple_organizationFun(id) {
      get_simple_organization({ id: id }).then((res) => {
        this.companyId = res.data.id;
        this.company = res.data.name;
      }); //查询站点所属公司
    },
    /*根据公司获取站点*/
    setstationIdlist() {
      this.stationId = "";
      getStationByCompanyId({ id: this.formData1.companyId }).then((res) => {
        this.siteIdList = res.data;
      });
    },
    addInfoFun() {
      this.scsjType = true;
      get_queue_up_inform_by_station({
        stationId: this.list1Info.stationId,
      }).then((res) => {
        this.scsjList = res.data;
      });
    },
    save_fake_erp_dataFun() {
      let json = {
        carNo: this.scsjListId,
        stationId: this.list1Info.stationId,
        stationName: this.list1Info.stationName,
        planId: this.formTop.id,
      };
      save_fake_erp_data(json).then((res) => {
        if (res.code == 1001) {
          this.$message({
            message: "新增成功",
            type: "success",
          });
          this.ToViewTypeFun();
        }
      });
    },
    look4Fun(e) {
      this.look4Type = true;
      get_weighing_check({ proId: e.id }).then((res) => {
        if (res.code == 1001) {
          console.log(11);
        }
      });
    },
    look7Fun(e) {
      this.abnormalConfig = e;
      this.abnormalVisible = true;
    },
    customerFun(e) {
      let json = {
        id: e.id, // 物流信息主键id
        planId: this.planId, // 订单id
        engineeringName: e.engineeringName, // 工程名
        orderNo: e.orderNo, // 订单号
        productName: e.productName, // 产品名
        adjustResidueNum: e.adjustResidueNum, //调整余料量
        adjustSignForNum: e.adjustSignForNum, //调整签收量
        code: e.code, // 运输号
        carNo: e.carNo, // 车牌号
        proTime: e.proTime, // 生产时间
        proNum: e.proNum, // 生产量
        lossNum: e.lossNum, // 损耗量
        shiftTo: e.shiftTo, // 转入量
        faceValue: e.faceValue, // 票面量
        adjustNum: e.adjustNum, // 异常调整量
      };
      notice_customer(json).then((res) => {
        if (res.code == 1001) {
          this.$message({
            type: "success",
            message: "发送成功!",
          });
          this.ToViewTypeFun();
        }
      });
    },
    adjustFun(e, name) {
      let json = {
        id: e.id,
      };
      if (name == "adjustResidueNum") {
        json[name] = e.adjustResidueNum;
      } else {
        json[name] = e.adjustSignForNum;
      }
      console.log(json);
      update_adjust_num(json).then((res) => {
        if (res.code == 1001) {
          this.$message({
            type: "success",
            message: "修改成功!",
          });
          this.ToViewTypeFun();
        }
      });
    },
    lookFun(e) {
      this.lookType = true;
      this.formData = e;
      this.$refs["formDataTable"]?.doLayout();
    },
    submit5() {
      this.$refs.formData5.validate((valid) => {
        if (valid) {
          let obj = {
            stationId: this.list1Info.stationId,
            station: this.list1Info.stationName,
            companyId: this.list1Info.companyId,
            company: this.list1Info.company,
            engineeringName: this.list1Info.engineeringName,
            engineeringId: this.list1Info.engineeringId,
            engineeringLocation: this.list1Info.place,
            planId: this.list1Info.id,
            pouringPart: this.list1Info.structuralParts,
            product: this.list1Info.productName,
            productId: this.list1Info.strengthGradeId,
            logisticsNo: this.list2Info.code,
            carNo: this.list2Info.carNo,
            proId: this.list2Info.id,
          };
          this.formData5 = { ...this.formData5, ...obj };
          this.formData5.detectionType = this.$fromatTable(
            this.detectionTypeIdList,
            this.formData5.detectionTypeId,
            "id",
            "name"
          );
          console.log(JSON.parse(JSON.stringify(this.formData5)));
          console.log(handler_operation_notice_check);
          handler_operation_notice_check(this.formData5).then((res) => {
            if (res.code == 1001) {
              this.look5Type = false;
              this.$message({
                type: "success",
                message: "操作成功!",
              });
              this.ToViewTypeFun();
            }
          });
        } else {
          return false;
        }
      });
    },
    look5Fun(e) {
      this.look5Type = true;
      this.proId = e.id;
      this.list2Info = e;
    },
    submit3() {
      this.$refs.formData4.validate((valid) => {
        if (valid) {
          if (
            this.formData4.exceptionType == 1 &&
            ((this.formData4.stationId === this.list2Info.productionSiteId &&
              !this.radio) ||
              (this.list2Info.surplusStatus === 2 && !this.radio))
          ) {
            this.$message.warning("请选择接收工程的计划");
            return;
          }
          const params = {
            proId: this.proId,
            exceptionType: this.formData4.exceptionType,
            stationId: this.list2Info.productionSiteId,
            station: this.list2Info.productionSite,
            turnNum: this.formData4.turnNum,
            engineeringId: this.radio.engineeringId,
            engineeringName: this.radio.engineeringName,
            turnStationId: this.radio.stationId,
            turnStationName: this.radio.stationName,
            carNo: this.list2Info.carNo,
            turnPlanCode: this.radio.code,
          };
          if (
            this.formData4.exceptionType == 1 &&
            this.formData4.stationId !== this.list2Info.productionSiteId &&
            (this.list2Info.surplusStatus === 1 ||
              this.list2Info.surplusStatus == null)
          ) {
            handlerExceptionNew(params).then((res) => {
              if (res.code === 1001) {
                this.$message.success("操作成功");
                this.look3Type = false;
                this.surplusVisible = false;
              }
            });
            return;
          }
          this.look3Type = false;
          this.surplusVisible = false;
          this.$router.push({
            name: "sign_smartschedulj",
            query: { ...params, type: 1 },
          });
        }
      });
    },
    /**回场过磅 */
    look1Fun(e) {
      if (e.dataStatus != 4 && e.markWeighing != 1) {
        this.proId = e.id;
        let type = this.copy(e.markWeighing);
        setTimeout(() => {
          e.markWeighing = type;
        }, 100);
        this.fnThrottle(this.look1FunShow, 10, 1000)();
      }
    },
    look1FunShow() {
      this.$confirm("此操作将通知司机回场过磅, 是否继续?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        cancelButtonClass: "bottom_all_two",
        confirmButtonClass: "bottom_all",
        type: "warning",
      })
        .then(() => {
          handler_operation_notice_weighing({ proId: this.proId }).then(
            (res) => {
              if (res.code == 1001) {
                this.$message({
                  type: "success",
                  message: "操作成功!",
                });
                this.ToViewTypeFun();
              }
            }
          );
        })
        .catch(() => {
          this.$message({
            type: "info",
            message: "已取消",
          });
        });
    },
    /**函数节流 */
    fnThrottle(method, delay, duration) {
      var that = this;
      var timer = this.timer;
      var begin = new Date().getTime();
      return function () {
        var current = new Date().getTime();
        clearTimeout(timer);
        if (current - begin >= duration) {
          method();
          begin = current;
        } else {
          that.timer = setTimeout(function () {
            method();
          }, delay);
        }
      };
    },
    /**退货 */
    submit2() {
      this.formData3.proId = this.proId;
      if (this.markSalesReturn != 1) {
        handler_operation_notice(this.formData3).then((res) => {
          if (res.code == 1001) {
            this.$message({
              type: "success",
              message: "操作成功!",
            });
            this.look2Type = false;
            this.ToViewTypeFun();
          }
        });
      } else {
        update_remark(this.formData3).then((res) => {
          if (res.code == 1001) {
            this.$message({
              type: "success",
              message: "修改成功!",
            });
            this.look2Type = false;
            this.ToViewTypeFun();
          }
        });
      }
    },
    /**强制退货 */
    look2Fun(e) {
      if (e.dataStatus != 4 && e.markSalesReturn != 1) {
        this.proId = e.id;
        this.markSalesReturn = e.markSalesReturn;
        this.formData3.remark = e.remark;
        let type = this.copy(e.markSalesReturn);
        setTimeout(() => {
          e.markSalesReturn = type;
        }, 100);
        this.look2Type = true;
      }
    },
    submit1_1() {
      this.$refs.submit1_1.validate((valid) => {
        if (valid) {
          this.formData1.planId = this.planId;
          this.formData1.detList = this.arrList1;
          save_information_collection(this.formData1).then((res) => {
            if (res.code == 1001) {
              this.look1Type1 = false;
              this.ToViewTypeFun();
            }
          });
        } else {
          return false;
        }
      });
    },
    /**空票签收，保存并通知客户 */
    submit1_2() {
      this.$refs.submit1_2.validate((valid) => {
        if (valid) {
          this.formData2.planId = this.planId;
          save_empty_ticket_sign(this.formData2).then((res) => {
            if (res.code == 1001) {
              this.look1Type2 = false;
              this.ToViewTypeFun();
            }
          });
        } else {
          return false;
        }
      });
    },
    /**查看运输 */
    ToViewTypeFun(e) {
      if (e) {
        this.orderType = e.orderType;
        this.formTop = e;
        this.planId = e.id;
        this.list1Info = e;
      }
      this.ToViewType = true;
      let obj = {
        planId: this.planId,
        page: 1,
        pageSize: 1000,
        stationId: this.stationId,
      };
      get_dispatch_logistics_page(obj).then((res) => {
        if (res.code === 1001) {
          this.tableData2 = res.data.data;
        }
      });
    },
    init() {
      /*重置数据*/
      this.$data.tableParam = this.$options.data().tableParam;
      this.tableParam.orderNo = "";
      this.tableParam.structuralParts = "";
      this.tableParam.pouringMethod = "";
      this.tableParam.engineeringName = "";
      this.tableParam.startTimDateEndTimDate = [];
      this.tableParam.pouringTime = "";
      this.tableParam.endPouringTime = "";
      this.gettableData();
    },
    look1Type1Fun() {
      this.look1Type1 = true;
      setTimeout(() => {
        this.$refs.submit1_1.clearValidate();
      }, 100);
    },
    look1Type2Fun() {
      this.look1Type2 = true;
      setTimeout(() => {
        this.$refs.submit1_2.clearValidate();
      }, 100);
    },
    /**查询站点的：接收工程方list */
    getEngineeringIdListFun(e) {
      this.engineeringIdList = [];
      get_engineering_list({ stationId: e }).then((res) => {
        this.engineeringIdList = res.data;
      });
    },
    update_logisticsFun() {
      update_logistics(this.formData).then((res) => {
        if (res.code == 1001) {
          this.$message({
            message: "操作成功",
            type: "success",
          });
          this.lookType = false;
          this.ToViewTypeFun();
        }
      });
    },
    /**外协数据单选 */
    update_data_typeFun(row, videoAudit) {
      let json = {
        id: row.id,
        isProcessing: row.isProcessing,
        isCarriage: row.isCarriage,
        isPumping: row.isPumping,
      };
      if (videoAudit) {
        json.videoAudit = videoAudit;
      }
      update_data_type(json).then((res) => {
        if (res.code == 1001) {
          this.$message({
            message: "操作成功",
            type: "success",
          });
          this.look6Type = false;
          this.ToViewTypeFun();
        }
      });
    },
    /**卸料视频 */
    look6Fun(row) {
      this.look6List = row.videoList;
      this.look6Type = true;
      this.list2Info = row;
    },
    /**泵送选择 */
    update_pump_line_useFun(row, pumpLineUse) {
      update_pump_line_use({ id: row.id, pumpLineUse: pumpLineUse }).then(
        (res) => {
          if (res.code == 1001) {
            this.$message({
              message: "操作成功",
              type: "success",
            });
            this.ToViewTypeFun();
          }
        }
      );
    },
    /**小方量补差(单位) */
    set_small_quantities_deltaFun(name, data) {
      console.log(data);
      let json = {
        id: data.id,
        faceValue: data.faceValue,
        planId: data.planId,
        engineeringId: this.list1Info.engineeringId,
        adjustSignForNum: data.adjustSignForNum,
      };
      if (name == "isSmallQuantities") {
        json.isSmallQuantities = data.isSmallQuantities;
      } else {
        json.isSmallTransport = data.isSmallTransport;
      }
      set_small_quantities_delta(json).then((res) => {
        console.log(res);
        console.log(res.code);
        if (res.code == 1001) {
          this.$message({
            message: "操作成功",
            type: "success",
          });
          this.ToViewTypeFun();
        } else {
          if (name == "isSmallQuantities") {
            data.isSmallQuantities = data.isSmallQuantities == 1 ? 0 : 1;
            console.log(data.isSmallQuantities);
          } else {
            data.isSmallTransport = data.isSmallTransport == 1 ? 0 : 1;
          }
        }
      });
    },
    /**车辆排队信息 */
    get_queue_up_informFun() {
      this.look1Type5 = true;
      get_queue_up_inform().then((res) => {
        this.vehicleQueuingList = res.data;
      });
    },
    /**
     * @Description: 余料处理
     * @param {*}
     * @Author: wangwangwang
     */
    handleSurplus() {
      this.surplusVisible = true;
      this.initSurplusList();
    },
    initSurplusList() {
      let obj = {
        page: this.surplusPage,
        pageSize: 10,
        carNo: this.carNo,
        surplusStatus: this.currenindex === 1 ? 1 : 3,
        stationId: this.stationId,
      };
      get_dispatch_logistics_page(obj).then((res) => {
        if (res.code === 1001) {
          this.surplusList = res.data.data;
          this.surplusTotal = res.data.totalRows;
        }
      });
    },
    handleClick(data) {
      this.proId = data.id;
      this.list2Info = data;
      this.look3Type = true;
      this.radio = "";
      this.planList = [];
      if (data.surplusStatus === 2) {
        this.formData4 = {
          exceptionType: data.exceptionType,
          stationId: data.turnStationId,
          station: data.turnStationName,
          turnNum: data.residueNum,
          remark: data.remark,
          engineeringId: data.engineeringId,
          engineering: data.engineeringName,
        };
        console.log(this.formData4);
        if (data.turnStationId) {
          this.getEngineeringIdListFun(data.turnStationId);
        }
        return;
      }
      this.formData4 = {
        exceptionType: data.exceptionType,
        stationId: data.productionSiteId,
        station: data.productionSite,
        turnNum: data.residueNum,
        remark: data.remark,
        engineeringId: data.engineeringId,
        engineering: data.engineeringName,
      };
      if (data.productionSiteId) {
        this.getEngineeringIdListFun(data.productionSiteId);
      }
      /**
       * @Description: 已处理的数据通过turnPlanCode查询订单
       * @param {*}
       * @Author: wangwangwang
       */
      if (this.currenindex === 3) {
        const params = {
          engineeringId: data.engineeringId,
          orderNo: data.turnPlanCode,
        };
        plan_list(params).then((res) => {
          if (res.code === 1001) {
            this.planList = res.data;
          }
        });
      }
    },
    WXupdateStatusFun(e) {
      backManSign({ id: e.id }).then((res) => {
        if (res.code == 1001) {
          this.$message({
            message: "操作成功",
            type: "success",
          });
          this.ToViewTypeFun();
        }
      });
    },
    changeItem2(e) {
      let item = this.pumpTypeList.find((v) => v.id == e.pouringWayId);
      e.pouringWay = item.itemName;
      if (item.type == 1) {
        e.pumpWay = 1;
      } else {
        e.pumpWay = 0;
      }
    },
    /**运输信息 */
    addDetList() {
      this.formData.detList.push({
        pouringWayId: "", //浇筑方式id
        pouringWay: "", //浇筑方式
        pumpWay: "", //泵送方式，1是，0非
        num: "", //方量
        height: "", //臂长
        createTime: "", //浇筑时间
        pumpLineUse: 1, //泵管使用：1内部泵管，2外部泵管
        logisticsNo: this.formData.id,
      });
    },
    deleteDetList(index) {
      if (this.formData.detList[index].id) {
        this.formData.detList[index].status = 0;
      } else {
        this.formData.detList.splice(index, 1);
      }
    },
    className({ row }) {
      if (row.status == 0) {
        return "tableHidden";
      }
    },
    sizeChange(value) {
      this.tableParam.pageSize = value;
      this.gettableData();
    },
  },
  deactivated() {
    this.ToViewType = false;
    this.look3Type = false;
  },
  filters: {
    imgMp4TypeFun(d) {
      console.log(d.includes("img"));
      if (d.includes("img")) {
        return "img";
      } else {
        return "mp4";
      }
    },
    pouringMethodFilter(e) {
      if (e) {
        e = JSON.parse(e);
        let table = e.map((res) => res.name);
        let text = table.join("、");
        return text;
      }
    },
    mixProportionFun(e) {
      if (e) {
        e = JSON.parse(e);
        let table = e.map((res) => res.value);
        let text = 0;
        table.forEach((v) => {
          text = text + Number(v);
        });
        return text;
      }
    },
  },
};
</script>

<style lang="scss" scoped>
.dialog-pages {
  @include discen_al;
  padding-top: 10px;
}
.dialog-title {
  font-size: 16px;
  font-weight: bold;
  padding-right: 40px;
}
.el-input,
.el-select {
  width: 240px;
}
.table_link {
  margin: 0 10px;
  color: $bg_color;
}

.table_link:hover {
  opacity: 0.8;
}
.tabtop {
  width: 381px;
}
.FZYtitle {
  position: relative;
  top: -10px;
  span {
    margin-right: 80px;
  }
}
.FZYimgMp4list {
  display: flex;
  flex-wrap: wrap;
  padding: 10px;
}
</style>
<style lang="scss">
.tableHidden {
  display: none;
}
.j_FZYinfo {
  padding: 0 !important;
  .el-form-item {
    width: 380px;
    margin: 0px !important;
  }
}
#dy {
  padding: 15px;
  .el-card__body {
    border: 1px solid #ccc;
    padding: 35px;
    .top {
      > div:nth-of-type(1) {
        font-size: 26px;
        font-weight: 600;
        text-align: center;
      }
      > div:nth-of-type(2) {
        padding-top: 10px;
        font-size: 18px;
        font-weight: 600;
        text-align: center;
        position: relative;
        > small {
          position: absolute;
          left: 535px;
          top: 15px;
          font-weight: 100;
          font-size: 14px;
        }
        > img {
          width: 80px;
          position: absolute;
          right: 0px;
          top: -25px;
        }
      }
      > div:nth-of-type(3) {
        padding: 5px 0 5px 0;
        > span {
          font-size: 14px;
          width: 350px;
          display: inline-block;
        }
      }
    }
    .table {
      border: 1px solid #ccc;
      .div1 {
        display: flex;
        min-height: 55px;
        > div:nth-of-type(1) {
          width: 490px;
          flex: none;
          border-right: 1px solid #ccc;
          border-bottom: 1px solid #ccc;
          padding: 17px 5px;
        }
        > div:nth-of-type(2) {
          flex: 1;
          border-bottom: 1px solid #ccc;
          padding: 17px 5px;
        }
      }
      .div2 {
        font-size: 13px;
        display: flex;
        min-height: 30px;
        > div:nth-child(odd) {
          width: 110px;
          flex: none;
          border-right: 1px solid #ccc;
          border-bottom: 1px solid #ccc;
          padding: 5px;
          display: flex;
          align-items: center;
          justify-content: center;
        }
        > div:nth-child(even) {
          width: 165px;
          flex: none;
          border-right: 1px solid #ccc;
          border-bottom: 1px solid #ccc;
          padding: 5px;
          display: flex;
          align-items: center;
          justify-content: center;
        }
        > div:nth-of-type(4) {
          width: 105px;
          flex: none;
        }
      }
      .div3 {
        font-size: 13px;
        min-height: 30px;
        display: flex;
        > div:nth-of-type(1) {
          width: 110px;
          flex: none;
          border-right: 1px solid #ccc;
          border-bottom: 1px solid #ccc;
          padding: 5px;
          display: flex;
          align-items: center;
          justify-content: center;
        }
        > div:nth-of-type(2) {
          flex: 1;
          border-bottom: 1px solid #ccc;
          padding: 5px;
          display: flex;
          align-items: center;
        }
      }
      .div4 {
        font-size: 13px;
        min-height: 30px;
        display: flex;
        > div:nth-of-type(1) {
          width: 110px;
          flex: none;
          border-right: 1px solid #ccc;
          border-bottom: 1px solid #ccc;
          padding: 5px;
          display: flex;
          align-items: center;
          justify-content: center;
        }
        > div:nth-of-type(2) {
          flex: 1;
          border-bottom: 1px solid #ccc;
          padding: 5px;
        }
      }
    }
    .bottom {
      margin: 10px 10px;
      > span {
        display: inline-block;
        width: 245px;
      }
    }
  }
}
#dyBox {
  display: none;
  width: 1000px;
  font-size: 22px;
  .qrcode-container {
    text-align: right;
    padding: 20px 120px 45px 0;
    .qrcode {
      width: 90px;
      height: 90px;
    }
  }
}
</style>
